package com.koo.modules.purchase.entity;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.koo.common.base.entity.CommonEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @author charlin
 * @email 136137465@qq.com
 * @date 2023-03-03 11:43:30
 */
@Data
@ApiModel("")
@TableName("purchase_receive_order")
public class PurchaseReceiveOrderEntity extends CommonEntity {
    private static final long serialVersionUID = 1L;


    @ExcelIgnore
    @TableId
    private Long receiveId;

    @ColumnWidth(11)
    @ExcelProperty("采购订单id")
    @ApiModelProperty(value = "采购订单id")
    private Long purchaseOrderId;

    @ColumnWidth(11)
    @ExcelProperty("采购订单号")
    @ApiModelProperty(value = "采购订单号")
    private String purchaseOrderNo;

    @ColumnWidth(11)
    @ExcelProperty("收货单号")
    @ApiModelProperty(value = "收货单号")
    private String receiveNo;

    @ColumnWidth(11)
    @ExcelProperty("供应商id")
    @ApiModelProperty(value = "供应商id")
    private Long supplierId;

    @ColumnWidth(11)
    @ExcelProperty("供应商名称")
    @ApiModelProperty(value = "供应商名称")
    private String supplierName;

    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @ColumnWidth(11)
    @ExcelProperty("收货日期")
    @ApiModelProperty(value = "收货日期")
    private Date receiveDate;

    @ColumnWidth(11)
    @ExcelProperty("总费用")
    @ApiModelProperty(value = "总费用")
    private BigDecimal totalFee;

    @ColumnWidth(11)
    @ExcelProperty("温度控制")
    @ApiModelProperty(value = "温度控制")
    private String temperatureControl;

    @ColumnWidth(11)
    @ExcelProperty("运输工具")
    @ApiModelProperty(value = "运输工具")
    private String transportTool;

    @ColumnWidth(11)
    @ExcelProperty("运输温度")
    @ApiModelProperty(value = "运输温度")
    private String deliveryTemperature;

    @ColumnWidth(11)
    @ExcelProperty("运输方法")
    @ApiModelProperty(value = "运输方法")
    private String transportMethod;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ColumnWidth(11)
    @ExcelProperty("运输日期")
    @ApiModelProperty(value = "运输日期")
    private Date transportDate;

    @ColumnWidth(11)
    @ExcelProperty("审核人id")
    @ApiModelProperty(value = "审核人id")
    private Long auditUserId;

    @ColumnWidth(11)
    @ExcelProperty("审核人名称")
    @ApiModelProperty(value = "审核人名称")
    private String auditUser;

    @ColumnWidth(11)
    @ExcelProperty("审核状态1通过")
    @ApiModelProperty(value = "审核状态1通过")
    private Integer auditStatus;

    @ColumnWidth(11)
    @ExcelProperty("审核说明")
    @ApiModelProperty(value = "审核说明")
    private String auditNote;

    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @ColumnWidth(11)
    @ExcelProperty("总部日期")
    @ApiModelProperty(value = "总部日期")
    private String headQuarterDate;

    @ColumnWidth(11)
    @ExcelProperty("总部单号")
    @ApiModelProperty(value = "总部单号")
    private String headQuarterNo;

    @ColumnWidth(11)
    @ExcelProperty("收货人id")
    @ApiModelProperty(value = "收货人id")
    private Long receiveUserId;

    @ColumnWidth(11)
    @ExcelProperty("收货人")
    @ApiModelProperty(value = "收货人")
    private String receiveUser;



}
